package cl.ncx.cmvrc.persistence.bean.operadorGrua;

import java.util.List;

import javax.ejb.EJBException;

import cl.ncx.cmvrc.persistence.base.entities.grua.EstadoGrua;
import cl.ncx.cmvrc.persistence.base.entities.grua.Grua;
import cl.ncx.cmvrc.persistence.base.entities.personas.Gruero;
import cl.ncx.cmvrc.persistence.base.entities.solicitud.OrdenDeTrabajo;
import cl.ncx.cmvrc.persistence.base.entities.solicitud.Solicitud;

public interface IOperadorGruaSession {
	
	public static final String JNDI_NAME = "OperadorGruaSessionBean";
	
	/**
	 * Metodo que permite asignar una grua
	 * @param grua
	 * @throws EJBException
	 */
	public void asignaGrua(OrdenDeTrabajo ordenDeTrabajo) throws EJBException;
	
	/**
	 * Metodo que permite obtener una lista de las gruas disponibles
	 * @param grua
	 * @throws EJBException
	 */
	public List<Gruero> obtenerGruaDisponible() throws EJBException;
	
	/**
	 * Metodo que permite modificar el estado de la grua 
	 * @param grua
	 * @throws EJBException
	 */
	public void modificaEstado(Grua grua) throws EJBException;
	
	/**
	 * Metodo que permite ingresar la hora de llegada de la grua
	 * @param solicitud
	 * @throws EJBException
	 */
	public void registraHoraLlegada(Solicitud solicitud) throws EJBException;

}
